home *** CD-ROM | disk | FTP | other *** search
- The Philosophy of RISC OS
-
- (This document is an edited form of the note handed out to Independent Software
- Vendors during a course of seminars held by Acorn to introduce them to RISC OS.)
-
- Acorn System Software
- ---------------------
-
- From The BBC Computer onwards, Acorn has provided system software with
- its products that emaphsise an *abstract* view of device and IO control.
- By accessing system calls rather than absolute locations and direct
- hardware poking, applications can be made *future-proof*, so that they
- will run on future releases of hardware and of software. This applies
- to IO ports, graphics, and storage devices.
-
- As a consequence, there are numerous useful (and commercially important)
- programs that run on Archimedes which have been around since the earliest
- days of the BBC Computer. Considering the staggering differences in
- underlying hardware between these two systems, no other hardware
- manufacturer has managed this to such an extent. When BBC Computers first
- appeared PCs did not exist, and Apple ][s and Z80-based machines were
- prevelant in the microcomputer world: how many of those programs still run
- usefully today on current products?
-
- There are numerous other programs from the BBC machines which have
- failed to stand this test. Sometimes there are good reasons for this:
- if you wish to push a specific configuration to its limits you may have
- to write for that specific model.
-
- At other times, however, this is not so true. There were numerous programs
- for the BBC Computer which could not be ported to the Master or the Compact
- or to Archimedes without considerable pain. Similarly, there are commercial
- Arthur 1.20 applications which:
- rely on specific return addresses into the ROM
- poke device hardware directly
- access ADFS internal workspace
- access kernel internal workspace
- scribble on page zero
- access the system heap
- assume the base hardware address of the screen
- assume the use of :0
- By doing these things without good reason, an application mortgages its
- future in terms of portability to future machines, operating system
- releases, and architectures.
-
- Perhaps, at one time or another, you have had to do one of these things
- in order to get round some fundamental limitation of the current machine.
- That is all very well, but THINK FIRST!
-
- Some more subtle assumptions that should not be made:
- do not reconfigure the machine
- do not assume N-key rollover
- do not assume that video frame refresh is 50Hz (or any other value)
- do not assume that page size is 8 or 32K
- do not assume that the alphabet is Latin-1,
- or that the keyboard is English (international sales!)
- do not assume the precise processor speed:
- it could get faster, or slower
- do not assume the boot-up configuration properties that the
- user likes
- Some of these were much harder to live with on Arthur 1.20. Any such
- decisions should be reevaluated with RISC OS.
-
- How is RISC OS Different from other systems?
- --------------------------------------------
-
- RISC OS is not just Arthur with a few additional features. The functionality
- of the system as a whole has expanded out of all recognition, so that it
- should be thought of as a completely different system, more advanced and
- more effective at supporting high-quality applications than any competing
- operating system.
-
- The best way to understand the difference is to see a demonstration, and
- to try using it.
-
- RISC OS is about
- making programs EASY TO USE
- making programs WORK TOGETHER
- making programs EASY TO CONTROL
- It is not simply that we have provided multi-tasking: we also provide the
- advice, the guidance and the example to make multi-tasking programs work
- together harmoniously and productively, while remaining under easy control
- of the user.
-
- EASY TO USE
- -----------
-
- RISC OS is easy to use because it provides a *consistent* model for
- easy-to-understand operations. Applications do similar things in a similar
- way. Standard facilities are provided for menus, dialogue boxes, and icons.
- Standard metaphors are provided for data transfer, loading and saving,
- loading and unloading an application, WYSIWYG colour and graphics, printer
- drivers, selection, and so on.
-
- Every aspect of RISC OS encourages applications to make life easier for
- the user. The use of common metaphors for common operations is further
- ensured by the extensive written guidelines that we supply to applications
- authors.
-
- PROGRAMS WORKING TOGETHER
- -------------------------
-
- The constantly resident Filer provides instant access to filing system
- operations, whatever other applications are running. The user interacts with
- this when loading and saving files for running applications, rather than
- having to learn about some separate part of each application. Identical user
- actions are also used to transfer data between applications. As another
- example, facilities such as interactive help can be built using applications
- that talk to each other, rather than having to build such facilities into
- the system itself.
-
- All of these are examples of the operation of general-purpose
- primitives within RISC OS, rather than being built-in special cases.
- This demonstrates the power of the underlying system.
-
- EASY TO CONTROL
- ---------------
-
- The Task Manager utility provides the user with instant understanding of which
- applications are running, and how much memory is used by each. It also
- provides the means to control interactively the use of memory by the
- operating system. Unlike many systems there is no "fragmentation" problem
- caused by changing such things dynamically, making best use of Archimedes'
- memory mapping hardware.
-
- The Palette utility provides the user with control of the screen mode
- being used, allowing on-the-fly tradeoff between memory usage, resolution,
- colour and performance. All applications are written to run in any mode,
- making the best use possible of whatever graphics facilities are available.
-
- The configuration and installation guidelines for applications ensure that
- any application can be run from any filing system. Complex installation
- procedures are not required for applications, they can simply be moved from
- one location to another on the desktop. Access to central resources such as
- font libraries is also provided in a way that is easy to control.
-
- On many systems multi-tasking is only provided at the cost of additional
- complexity for the system user, installer and maintainer. On RISC OS these
- things are actually simplified by the presence of multi-tasking, rendering
- them comprehensible (and thus controllable) to all.
-